当前位置:主页 > Office办公 > Windows Installer硬盘空间

Windows Installer硬盘空间

为什么 Windows Installer 会需要如此多硬盘空间
为什么 Windows Installer 会需要如此多硬盘空间

有朋友问到 windows\installer 这个目录下的内容为什么占用如此多的硬盘空间,以及是否可以删除的问题,搜索到这篇文章,感觉不错,于是简单翻译了一下发在这里,希望对大家有所帮助。Windows Installer 是一个执行事务型(Transactional)安装的引擎。当首次安装一个产品时,被安装的文件中基本很少已经存在于计算机中,甚至可能完全没有。但当升级或修补某一产品时,则主要是对这些文件进行替换,因此就必须将原始副本保存起来,以便在万一遇到错误时安装程序可以进行回滚。下文介绍了 Windows Installer 为什么需要这么多磁盘空间,以及相关文件都在哪里。提取出的文件由于多种原因,可能会需要引导程序(Bootstrap application)。引导程序可能会将安装文件压缩到引导程序本身内部,或者连同安装程序一起包含在一个自解压存档中。引导程序可能还需要直接从网站下载文件到磁盘上某个位置,或间接访问互联网上的文件缓存。该位置通常位于 %TEMP%。如果提取程序未将这些文件删除,在安装结束后您可以自行删除这些文件。然而要注意,某些安装程序可能会将这些文件注册为源缓存(Source cache)。如果源缓存被删除,但由于某种原因需要提供源内容,Windows Installer 可能会要求提供原始安装文件,或直接导致产品安装失败。 临时本地缓存如果程序包中包含了完整用户界面,并且该界面会被显示出来,Windows Installer 就会在用户的 %TEMP% 目录下创建 .msi 或 .msp 文件的副本。如果这种安装 – 即客户端安装 – 被提升了权限,则 %TEMP% 将使用进行验证与授权进行安装的用户的对应位置。在 UI 阶段内,Windows Installer 使用该副本计算初始磁盘空间需求,直到开始生成安装脚本。该副本是其他任何可能被提取到本地硬盘上的临时副本的补充。也就是说,使用 msiexec.exe 或Windows Installer API 调用所引用的程序包会被使用 Windows Installer 生成的文件名复制到 %TEMP%,哪怕源副本已经存在于 %TEMP%中。

334 次浏览